package com.ptl.bp.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.net.URI;

/**
 * 电池供应链尽职调查实体类
 * 描述：包含电池供应链尽职调查报告、第三方保证和供应链指数等信息
 */
@Data
@Schema(description = "电池供应链尽职调查数据模型")
public class BatterySupplyChainDueDiligence {

    @NotNull(message = "供应链尽职调查报告不能为空")
    @Schema(description = "电池护照必须包含'其尽职调查报告第52(3)条中提到的负责任采购信息'。" +
            "尽职调查报告必须通过电池护照和互联网免费向公众提供。" +
            "报告以及电池护照中的信息必须提供以下四个方面的数据和信息：" +
            "1. 供应链尽职调查政策：经济运营商为符合第49条要求而采取的步骤。" +
            "2. 风险管理计划：经济运营商为符合第50条要求而采取的步骤，包括重大不利影响的发现。" +
            "3. 进行的第三方验证的摘要报告（第51条）。" +
            "4. 关于获取信息、公众参与决策和获取司法的详细说明。",required = true )
    private String supplyChainDueDiligenceReport;

    @Schema(description = "作为非强制性数据属性，电池护照应包含第三方供应链保证信息，如认证的、公认的供应链计划。" +
            "根据提供的指南，探索如何通过电池护照最好地提供第三方保证。"
    )
    private String thirdPartyAssurances;

    @Schema(description = "作为非强制性数据属性，电池护照应包含供应链指数，以便消费者轻松评估负责任采购的水平。" +
            "GBA（全球电池联盟）正在开发的ESGE+指数，用于评分和基准化可持续性表现。" +
            "一旦开发完成，探索如何通过电池护照最好地提供这些指数。"
    )
    private Double supplyChainIndices;
}